Streaming video services encode source content into various resolution and bit rate levels. These various resolution and bit rate levels allow the streaming video service to tailor video streams to a customer's playback device capability and bandwidth availability. On the client side, software running on the playback device adaptively switches between resolution and bit rate levels according to algorithms that manage the video quality and playback experience.
For a streaming video service with a large media content catalog having diverse content characteristics, determining the specific set of available resolution and bit rate levels for optimizing the customer experience remains a challenge. Furthermore, for a given resolution and bit rate level, automated and efficient determination of the values for encoding parameters is also a challenge. This challenge is increased in the context of codecs with numerous encoding parameters (e.g., 30-50), such as, for example, the Advanced Video Coding (AVC), High-Efficiency Video Coding (HEVC), and AOMedia Video 1 (AV1) codecs. Specifically, such codecs utilize encoding profiles having numerous encoding parameters, such as quantization parameters, block size parameters, adaptive encoding optimization parameters, and so forth, with each encoding parameter having either direct or indirect impact on encoding bit rate and quality. To address these challenges, streaming video services have conventionally relied on human subject matter experts to perform trial and error analysis on a limited dataset to determine a set of encoding profiles. While streaming video services have replaced certain manual processes by using computational modules for search/optimization processes, they have typically been limited to one or two encoding parameters, such as, for example, a quantization parameter or constant rate factor.